Methods and apparatuses for assisting the production of media works and the like

ABSTRACT

Systems and methods for assisting one or more users in the production of a media work from a plurality of recordings are disclosed. In an exemplary embodiment, digital versions of the recordings are stored on a file-storage server accessible over a communications network. A media-library server provides an organized way for users to access and view the digital versions, and to associate various data files with the digital versions, such as transcription files, logging files, and storyboard documents. The exemplary media library generates web pages that enable users to search and access the digital versions from an internet browser running on a conventional personal computer. The browser also enables users to view the digital versions with a browser-compatible media viewer.

This application is a continuation of U.S. application Ser. No.11/816,085, filed May 23, 2008; which is a 371 of InternationalApplication No. PCT/US2006/004987, filed Feb. 13, 2006 now abadoned;which claims the benefit of U.S. Provisional Application No. 60/652,455,dated Feb. 12, 2005; all if which are incorporated herein by reference.

FIELD OF THE INVENTION

The present invention relates to methods and apparatuses for assistingusers in the production of media works and the like from a plurality ofrecordings and other content assets.

BACKGROUND OF THE INVENTION

The entertainment industry has developed a new genre of movie/televisionentertainment called “Reality TV,” or “unscripted programming.” In thisgenre, untrained actors are placed in various settings with generaldirection and rules to guide their interactions, but without a specificscript for actions or dialog. Beforehand, the production staff has ageneral idea of the storyline for the production, but the finalstoryline will depend upon the interactions that take place. Severalvideo cameras are located within the settings and record theinteractions among the actors for long periods of time. Various stimulimay be introduced into the settings by the production staff to provokeunpredictable interactions among the actors. After several settings havebeen videotaped for several hours over several days by several cameras,the production staff reviews hundreds to thousands of hours of videotapeand constructs a final storyline for the TV production (i.e., mediawork).

In a typical production, the raw video material is reviewed by severalpeople, typically in the range of 10 to 50, each doing a specific task,such as logging, transcribing, scanning for story points, story writing,and setting creative directions. To review raw video material, each ofthe hundreds of videotapes is duplicated several times, and theduplicates are distributed among the production staff. The large numberof tapes has, however, created several problems that hamper and delaythe production, and that increase the need for additional staffing tomanage the distribution of duplicate tapes. As a first problem, theduplication of the videotapes requires time and expensive duplicatingequipment. This has created a significant bottleneck in getting thevideo material to the production staff. As a second problem, the task ofduplicating tens to hundreds of tapes as quickly as possible oftencreates a haphazard work environment where the original tapes andduplicates can be misplaced, lost, mislabeled, mixed up, and/or stolen.As a third problem, the large volume of duplicate tapes complicates thetape management and distribution process, and often leads to the failureto distribute duplicate tapes to key staff production persons fortranscription, logging, and storyline development. As a fourth problem,the large volume of video material has made it difficult for theproduction staff to communicate with one another and correctly identifyimportant video scenes. This impedes the creativity and productivity ofthe producers and the storywriters. As a fifth problem, the large volumeof original tapes makes it difficult to correlate and communicate allthe production information (e.g., “shoot packet documentation”)associated with the original tapes. As a sixth problem, the productionstaff is essentially forced to work out of a central facility because ofthe need to have physical access to the duplicate tapes and associateddocumentation.

To date, these problems have hindered the production and development ofunscripted programming. A solution to these problems is needed to easethe production of unscripted programming and to enable the genre toexpand in new creative directions.

SUMMARY OF THE INVENTION

The present invention provides methods and apparatuses that addressthese problems.

The present invention encompasses a first exemplary system for assistingone or more users in the production of a media work from a plurality ofrecordings, with the first exemplary system comprising a file-storageserver accessible over a communications network, an intake unit, and amedia-library server. The intake unit receives an electrical signalrepresentative of a recording and an identifier for the recording, andstores a digital version of the recording as a file in the file-storageserver. The digital-version file is accessible over the communicationsnetwork by reference to a corresponding network identifier. The intakeunit provides a notification of the presence of the digital version tothe media-library server. The media-library server maintains a databaseof digital versions of the recordings and provides records thereof in aform that can be viewed by a user, such as by an internet browser. Themedia-library server adds a record of the digital version to itsdatabase in response to receiving notification from the intake unit.

A preferred embodiment of the first exemplary system may include anotification processor that sends an electronic notification message toone or more users over the communications network upon the completion ofthe storing of a digital version of a recording. The electronicnotification message includes at least the corresponding recordingidentifier, network identifier of the digital version, or both. Also, apreferred embodiment of the first exemplary system may include asub-clip processor that divides a digital version into segments, andthat stores the segments as respective files in a file-storage serveraccessible over the communications network by reference to correspondingnetwork identifiers. The sub-clip processor notifies, either directly orindirectly, the media-library server of the existence of the sub-clipfiles, and the media-library server includes references to the sub-clipfiles in its record. Also, in a preferred embodiment of the firstexemplary system, the media-library server is capable of associating adata file that contains a transcription and/or logging of a recordingwith the digital version of the recording. This preferred embodimentincludes a transcription-logging processor that sends an electronicnotification message to at least one transcribing party over thecommunications network after the digital version of the recording hasbeen stored, the electronic notification message including at least thecorresponding identifier of the recording, network identifier of thedigital version, or both. Upon receiving the data file from thetranscribing party, the transcription-logging processor stores thereceived data file in a file-storage server accessible over thecommunications network by reference to a corresponding networkidentifier, and notifies the media-library server of the existence ofthe data file. Also, a preferred embodiment of the first exemplarysystem may comprise an access-control processor that tracks the locationof the tangible media of the recordings according to respectiveidentifiers that are affixed to the tangible media. The access-controlprocessor comprises a plurality of asset-control records, with anasset-control record being assigned to each recording tracked by theaccess-control processor. Each asset-control record comprises a field tohold the identifier of its corresponding recording, a field to hold arepresentation of the identifier affixed to its corresponding tangiblemedium, and at least a status field to indicate the location of thetangible medium. The access-control processor sends a notification tothe media-library server when the status field of an asset-controlrecord is changed, the notification identifying the correspondingrecording and providing an updated status.

The features of the first exemplary system eliminate the need forgeneration of duplicate tapes (e.g., VHS-work copies), and thecorresponding production bottleneck. The features of preferredembodiments of this exemplary system simplify and streamline themanagement and access of the recordings by providing central access tothe content of the recordings by way of the digital versions, byelectronically notifying users of the presence of the digital versions,and by monitoring the location of the original recordings. The featuresof additional preferred embodiments increase access to, and review of,the content of the recordings by providing sub-clips of the records, bymanaging the procurement of transcription/logging data files, and byenabling easy access to the transcription/logging data files.

The present invention also encompasses a second exemplary system forassisting one or more users in the production of a media work from aplurality of recordings. All or part of the second exemplary system maybe incorporated with the first exemplary system, including the preferredembodiments thereof. The second exemplary system comprises afile-storage server accessible over a communications network for storingdigital versions of the recordings as files that are accessible over thecommunications network by reference to corresponding networkidentifiers. The second exemplary system further comprises amedia-library server that maintains a database of library records of theplurality of recordings, each library record for a recording having afield to store the network address of the digital version of therecording and a plurality of information fields that store respectivepieces of information about the recording, the media-library serverfurther comprises a set of instructions that generate web-pagerepresentations of the library records that are accessible over thecommunications network.

A preferred embodiment of the second exemplary system has amedia-library server that further comprises an instruction set thatgenerates at least one web page accessible over the communicationsnetwork that presents a dialog box for accepting keywords that may beused to search one or more fields of the library records. Also, in apreferred embodiment of the second exemplary system, at least onelibrary record for a recording comprises a file-association field forassociating one or more document files with the recording, and whereinthe media-library server generates at least one web page accessible overthe communications network that presents a dialog box for accepting afilename or network address of a document file that is to be added tothe file-association field.

The features of the second exemplary system simplify for the users thetasks of managing and tracking the content of the recordings. Thefeatures of the preferred embodiments of this exemplary system simplifyfor the users the task of searching the content of the recordings, andfacilitate communication among the users.

The present invention also encompasses a third exemplary system forassisting one or more users in the production of a media work from aplurality of recordings. All or part of the third exemplary system maybe incorporated with either or both of the first and second exemplarysystems, including the preferred embodiments thereof. The thirdexemplary system comprises a file-storage server accessible over acommunications network, an intake unit, and a notification processor.The intake unit receives an electrical signal representative of arecording and an identifier for the recording, and stores a digitalversion of the recording as a file in the file-storage server. The fileis accessible over the communications network by reference to acorresponding network identifier. The notification processor provides anelectronic notification message to at least a first entity over thecommunications network after the completion of the storing of a digitalversion of a recording. The electronic notification message includes atleast the corresponding recording identifier, a network identifier ofthe digital version, or both.

Accordingly, it is an object of the present invention to enable thefacilitation of the production of media works and the like.

It is another object of the present invention to provide productionstaff with more organized access to recordings and other content assetsused to construct media works.

It is another object of the present invention to enable production staffto decrease the amount of time needed to create a media work fromrecordings and other content assets.

It is yet another object of the present invention to provide productionstaff with the ability to explore a greater range of creativity in theirmedia works.

These objects and others will become apparent to one of ordinary skillin the art from the present specification, claims, and attacheddrawings.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 illustrates a first exemplary system according to the presentinvention.

FIG. 2 shows an exemplary intake record used during an exemplary intakeprocess according to the present invention.

FIGS. 3A and 3B show exemplary media access records according to thepresent invention.

FIG. 4A shows an exemplary library record in web-page format accordingto the present invention.

FIG. 4B shows an exemplary web page for enabling a user to editinformation and to associate files to a library record according to thepresent invention.

FIGS. 5A and 5B show instances of an exemplary main access web page tothe Asset Library according to the present invention.

FIG. 6 illustrates the work flow of a typical production environmentaccording to the prior art.

FIG. 7 illustrates the work flow of an exemplary production environmentaccording to the present invention.

FIG. 8 shows an exemplary embodiment of an intake unit according to thepresent invention.

FIG. 9 shows an exemplary embodiment of a component according to thepresent invention.

FIG. 10 shows an exemplary embodiment of a media-library serveraccording to the present invention.

DETAILED DESCRIPTION OF THE INVENTION

The present invention provides several interconnected processes andsystems that assist users in the production of media works from contentrecordings, which may comprise audio recordings, video recordings,photographs, artwork, production notes, and the like. The users of theproduction methods and systems are collectively referred to as theproduction staff, and include, but are not limited to, executives,directors, producers, storywriters, editors, assistants, and productionstaffers. A preferred embodiment 100 of a system according to thepresent invention is illustrated in FIG. 1. System 100 comprises aplurality of components 110-190 that may be interconnected by adigital-packet-based communications network 105. Communications network105 may include local networks and the Internet. We briefly describeeach of the components first, and then follow up with a more detaileddescription of their interactions with each other and with the users ofthe system. As explained below, while components 110-190 are illustratedin FIG. 1 as separate components coupled to communications network 105,various components may be combined together into respective groups.

An intake unit 110 generates digital versions of audiotapes andvideotapes, generally referred to herein as recordings, and places thedigital version in a file-storage server 120 that is accessible overcommunications network 105. A media-library server 130 maintains adatabase of the stored digital versions of the recordings and enablesusers to associate various data files, such as logging, transcription,and production-note files, with each digital version. Media-libraryserver 130 includes a digital version in its listing in response to thedigital version being generated by intake unit 110. A plurality ofaccess portals 150 provide browser-based navigation to the users ofsystem 100 that enables them to search, listen, and view the digitalversions, and to associate additional information and files with eachdigital version in the library listing.

A notification processor 160 notifies a group of one or more users bye-mail when a digital version of a recording has been generated. Themembers of the group can be configured and changed by administrators ofthe system (i.e., users with special access privileges). Multiple groupscan be created, and a user operating intake unit 110 can select whichgroups to notify depending upon the nature of the particular recordingthat the intake unit is processing. An e-mail server 170 connected tocommunications network 105 provides e-mail accounts to the users, storesthe e-mail messages from notification processor 160, and allows theusers to access their e-mail messages through the access portals 150. Asanother component of system 100, a transcription-logging processor 180sends an electronic request to a user or outside vendor (bothgenerically referred to herein as a transcribing party) to create atranscription file, log file, or combination transcription/log file fora recording when the corresponding digital version has been generated.Transcription-logging processor 180 receives in return a data file ofthe transcription and/or log, loads it into file-storage server 120 orthe like, and causes the media-library server 130 to include the datafile in its listing along with the digital version.

As an enhancement of system 100, a sub-clip processor 140 canselectively divide a digital version of a recording into sub-clips basedone or more of the following criteria: scene changes, breaks in timecodes, periodic intervals (usually to the nearest key frame or audiodead space). The sub-clips may be stored in file-storage server 120 orsimilar device that is accessible over communications network 105. Asanother enhancement, an access-control processor 190 allocates andmaintains a data field for a bar-code identifier (or other suitabletypes of identifier) and an access-history table for each recording. Thebar-code field is capable of storing the identification informationcontained by a bar-code identifier affixed to the recording's tangiblemedium, and the access-history table is capable of indicating when therecording's tangible medium is removed from a designated location 198(e.g., storage vault) and by whom.

While components 110-190 are illustrated as separate components coupledto communications network 105, it may be appreciated that some or all ofthe components may be combined together into one or more respectivegroups. For example, file-storage server 120 may be combined with one ormore of intake unit 110, media-library server 130 and e-mail server 170;media-library server 130 may be combined with one or more of intake unit110, file-storage server 120, and e-mail server 170; sub-clip processor140 may be combined with one or more of intake unit 110, file-storageserver 120, media-library server 130, and processors 160, 170, 180, and190; and each of components 160, 170, 180, and 190 may be combined withany of components 110-140 and 160-190.

Having given an overview of preferred embodiments of the presentinvention, we now turn to providing a detailed description thereof.

Intake unit 110 comprises a user interface 115, a plurality of inputports coupled to a corresponding plurality of media readers MR1-MR4 toreceive electrical signals representative of the recording being read(e.g., played) by media readers MR1-MR4, a processor, and several setsof instructions that direct the processor in specific tasks, asdescribed below in greater detail. Intake unit 110 is capable ofreceiving an electrical signal representative of a recording on each ofits input ports coupled to the media readers, and of receiving arecording identifier for the recording from a user operating intake unit110. The electrical signal may be in analog form or digital form. Theintake unit stores a digital version of the recording as a file infile-storage server 120, typically via communications network 105. Ifthe electrical signal is in analog form, the processor is directedthrough a set of instructions to generate a digital version from theanalog signal. If the electrical signal is in digital form, theprocessor is directed through another set of instructions to generatethe digital version as a copy of the digital electrical signal directlyor with some modifications, or to generate the digital version in adifferent digital format from that of the digital electrical signal byway of a trans-coding process, as determined by user input. In allcases, the processor is preferably directed to include time-stamp codesinto the digital version, the time codes preferably comprising thestandard SMPTE format (Society of Motion Picture and TelevisionEngineers), or a form that can be later used to generate the SMPTEformat.

The digital version stored on file-storage server 120 can be accessed bycomponents of system 110 over communications network 105 by reference toa corresponding network identifier. The network identifier may take anyconventional form, including common forms used for the Internet,wide-area networks, local-area networks, and the like. One exemplaryform of a network identifier suitable for Internet access may be:

https://FileStorageID.ProductionCompany.com/DigitalVersionsDirectory/RecordingID.xyzwhere “https://FileStorage.ProductionCompany.com” indicates the Internetprotocol and IP address to file-storage server 120, where“DigitalVersionsDirectory” indicates the file directory of server 120where the digital version is stored, where “RecordingID” uniquelyidentifies the recording to which the digital version corresponds, andwhere “xyz” identifies the media type of the digital version, such asmpg, avi, mpw, way, etc. “RecordingID” is the previously-describedrecording identifier for the recording (as provided to intake unit 110by a user) or is derived from it. If the components of system 100 areinterconnected by a wide-area network or a local area network, then oneexemplary form of a network identifier may be:

\\FileStorageID\DigitalVersionsDirectory\RecordingID.xyz

where “\\FileStorageID\” indicates the network address to file-storageserver 120, and where “DigitalVersionsDirectory”, “RecordingID”, and“xyz” have their previous meanings.

In preferred embodiments of system 100, intake unit 110 presents to theuser, by way of user interface 115, an intake record to be filled outbefore a digital version of the recording is generated. An exemplaryrecord is shown in FIG. 2. It comprises a field (“Recording Identifier”)to receive an identifier for the recording, a field (“Bar-Code Data”) toreceive bar-code data of a bar-code identifier that is affixed to therecording's tangible medium, a field (“Media Type”) to indicate themedia type (e.g., Beta SP tape, S-VHS tape, digital DV tape, opticaldisc, audio record, audio compact disc, etc.), and a field (“FileStorage Location”) to indicate where on the network (e.g., the directoryon file-storage server 120) the digital version will be stored, whichwill be used to set the “FileStorageID” and “DigitalVersionsDirectory”portions of the network address of the digital version. The “RecordingIdentifier” field will be used to set or derive the “RecordingID”portion of the network address. To simplify the presentation of thepresent invention, and without loss of generality, we will take the casewhere the “RecordingID” portion of the network address for the digitalversion is identical to the value provided by the user in the “RecordingIdentifier” field of the intake record.

The intake record further comprises a field (“Input Port”) to indicateon which input port the recording will be received (e.g., which mediareader MR1-MR4 will be used to play the recording), and a field (“VideoFormat”) to indicate the digital format of the digital version(optionally including a resolution field). The contents of the “VideoFormat” field will determine the file extension “xyz” of the networkaddress of the digital version. One or more of the input ports may bepreset (i.e., hardwired) to receive a particular format of electricalsignal, such as analog audio, digital audio, analog YUV format (NTSC orPAL) with separated analog audio, analog composite video (NTSC or PAL)with combined audio, digital video (e.g., DV), etc. In such case, intakeunit 110 is programmed with the knowledge of the particular format forthe input port. As another approach, which may be used alone or incombination with the prior approach, one or more of the input ports mayhave two or more connectors to receive different types of formats. Inthis case, the intake record may include an additional selection field(not shown in the figure) for the port where the user can select whichconnector is to be used for the input port. Alternatively, intake unit110 may include electronic detection circuitry at each connector todetect the presence of an electrical signal, and thereby determine whichconnector and format are being used.

The preferred embodiments of the intake record shown in FIG. 2 furthercomprise a field (“Sub-Clips”) indicating whether sub-clips are to begenerated (optionally including a “Criteria” field for defining theclips), a field (“Notify upon completion of intake”) to indicate theusers (and/or groups of users) who will receive notification uponcompletion of the digital version, and one or more fields (“RequestTranscript/Log”) to indicate whether the digital version is to betranscribed and/or logged, and by whom. For the latter two fields,intake unit 110 preferably presents the user with respective lists ofgroups of users, individuals (e.g., other users), and vendors to selectfrom. To obtain the values for these fields, intake unit 110 can sendrequest messages over communications network 105 to notificationprocessor 160 and transcription-logging processor 180 requesting thenames of the groups, individuals, and vendors to be presented forselection. Processors 160 and 180 can then send reply messages to intakeunit 110 with the requested information. Processors 160 and 180 areconfigured beforehand with this information by a system administrator.There are several types of network communications protocols known to theart for sending and receiving the above types of messages betweencomponents over communications network, and any one of them may be usedto implement the messaging between component 110 and components 160 and180. The details of communications between components are describedbelow in greater detail.

To expedite the process of filling out an intake record, intake unit 110may comprise a plurality of selectable templates for the intake records,with each template filling in selected fields with preset values. Forexample, a default template may be used which pre-fills the followingfields: File Storage Location, the video and audio format fields, thesub-clip fields, the notification fields, and the transcription/loggingfields. The user is then required to enter the recording's identifier,the bar code on the recording's medium (preferably entered by means of aconventional, hand-held, bar-code scanner), the input port (i.e., MR1,MR2, MR3, or MR4), and preferably his/her name at the bottom of theintake record. The user is preferably allowed to change the pre-filledfields to meet particular circumstances. However, preferred embodimentsalso enable a system administrator to lock one or more of the pre-filledfields to set values that cannot be changed by the user performing theintake process.

In preferred practices of processing the recordings, a user obtains thetangible form of a recording, affixes a bar-code identifier to it, fillsout a corresponding intake record for the recording by way of userinterface 115 (preferably scanning the bar code with a scanner), andplaces the tangible form in one of media readers MR1-MR4 to be read.Thereafter, the user issues a start command to intake unit 110 to startits processing, and issues a start command to the selected media reader.The former command may be issued by keystroke or mouse click by the useron the intake record, and the latter command may be issued by the userpressing a play button on the media reader. As another approach toissuing the latter command, the intake unit 110 may send an electronicsignal to the selected media reader via interconnect cable to startplaying when the user issues the start command to intake unit 110.Intake unit 110 may start storing the digital version at file-storageserver 120 in segments as the intake process occurs, or may wait untilthe completion of the intake process before storing the digital versionat server 120. In the latter case, the entire file may be temporarilystored by a storage device within intake unit 110.

When the generation of the digital version of the recording has beencompleted, intake unit 110 either directly or indirectly notifies eachof components 130, 140, 160, 180, and 190 of the completion. Thenotification may be done by a number of approaches. As a first exemplarynotification approach, intake unit 110 may inform each of the componentsindividually, by electronic messages, according to the informationcontained on the intake record for the recording. If a component has notbeen combined with intake unit 110, the e-mail notification message maybe conveyed through communications network 105. If the component iscombined with intake unit 110, the e-mail notification can be done byinternal message (e.g., software-based communication between instructionsets). Each of components 130, 140, 160, and 180 receives at least therecording identifier and/or the storage location of the digital versionof the recording, and also receives additional information fieldspertinent to its particular task. In particular, sub-clip processor 140additionally receives the sub-clip information fields, notificationprocessor 160 additionally receives the field comprising the list ofindividuals and groups to notify, and transcription-logging processor180 additionally receives the transcription/logging information fields.Access-control processor 190 receives at least the recording-identifierfield, the bar-code field, optionally the media-type field, andpreferably the name field of the user who started the intake process.Each of the components, of course, may receive more information fieldsthan indicated above. The conveying of this information indicates thepresence of a new recording and corresponding digital version tocomponents 130, 140, 160, 180, and 190, which can then undertake theircorresponding tasks.

In preferred embodiments, each of components 130, 140, 160, and 180receives both the recording identifier and the network identifier of thedigital version as part of the notification from intake unit 110.However, system 100 may be implemented in a manner where all digitalversions are placed in a preset directory on server 120, and where thefile name (i.e., network identifier) of each digital version comprisesthe recording identifier. In this implementation, the recordingidentifier can be deduced from the network identifier, and the networkidentifier can be deduced from the recording identifier. Thus, in thisimplementation, each of components 130, 140, 160, and 180 need onlyreceive the recording identifier or the network identifier of thedigital version as part of the notification from intake unit 110.

As a second exemplary notification approach, intake unit 110 can sendthe contents of the intake record to one of the other components (or adedicated component not shown in FIG. 1), and that component can handlethe notification of the other components in the manner describedimmediately above. As a third exemplary notification approach, intakeunit 110 can place a copy of the intake record at a designated storagelocation (such as under a specific file directory under file-storageserver 120), and each of the components that needs the notification cancomprise a sub-process that periodically checks the designated storagelocation for newly-added intake records. When a newly-added intakerecord is detected, the system component can read it and determine whatactions to take based on the data in the record's fields. Combinationsof the above approaches may also be used; for example, some componentsmay receive direct notification while other components wouldperiodically check the designated storage location for newly-addedintake records.

Also upon completion of the intake process, a user removes the tangiblemedium of the recording from the media reader, and places it into thestorage vault 198, or gives it to another user to do so. The storagevault is preferably used to store all of the media assets, including thetangible media of the recordings, associated with the productionproject. Beforehand, the user notifies access-control processor 190 byway of a user interface 195 that the tangible medium is being placed instorage vault 198. Access-control processor 190 maintains a database ofasset-control records, with an asset-control record being assigned to atleast each asset that is to be kept in vault 198. User interface 195comprises a keyboard and screen, and preferably a hand-held bar-codescanner. The user scans the bar code of the tangible medium with thebar-code scanner, which provides the bar-code number to processor 195.Processor 195 searches its database for the asset-control record thatcorresponds to the scanned bar-code number. Beforehand, access-controlprocessor 190 preferably received a notification from intake unit 110,either directly or indirectly, containing the pertinent information fromthe intake record for the recording's tangible medium. Access-controlprocessor 190 creates a media-access record for the recording's tangiblemedium from this pertinent information, and places the media-accessrecord in its database of asset-control records. If processor 195 hasnot yet received the notification, it can send an inquiry message tointake unit 110 asking for the recording's information, or it can checkthe designated storage location for newly-added intake records,depending upon how the notification procedure has been configured (asdescribed above).

An exemplary media-access record is illustrated in FIG. 3A. It comprisesa field to hold the recording identifier (such as entered by the userduring the intake process), a field to hold the number of the bar-codethat has been affixed to the tangible medium of the recording, anoptional field to indicate the type of medium (e.g., VHS tape, Beta SPtape, recordable optical disc, art work, etc.), and another optionalfield to indicate the location within storage vault 198. The first threefields of the asset-control record are received from intake unit 110,unless the media asset did not undergo the intake process (such as wouldbe the case with art work). In this case, processor 190 enables the userto create an asset-control record and fill in the first three fields.The exemplary asset-control record also comprises an access table thatholds a history of when the medium has been checked out from the vaultand checked in to the vault, and by whom. Each time the tangible mediumof the recording is checked in or checked out of the vault, the user incharge of the vault scans the bar-code on the tangible medium with thebar-code scanner. In response, the access-control processor 190 accessesits database for the asset-control record of the correspondingrecording, and displays a processing dialog to the user on a screen ofinterface 195. The processing dialog box is shown in FIG. 3B in the casewhere the tangible medium is being checked out. Each time anasset-control record is created or updated, access-control processor 190can be configured to send an electronic message to media-library server130 in order to update these components on the status of the recording'stangible medium. The electronic message provides the recordingidentifier, the current status of the tangible medium, and a networklink to the asset-control record. This enables media-library server 130to provide the current status of the recording's tangible medium(checked in or checked out and by whom), and a network link to themedium's asset-control record to a user by way of a web page ofinformation about the recording, as described below in greater detail.

During the intake process, intake unit 110 performs any digitization,encoding, and trans-coding indicated by the intake record. For this,intake unit 110 comprises an audio digitizing unit, a video digitizingunit, one or more encoders, and/or one or more trans-coders. Thedigitizing units are common to the art, and readily integrated intosystems. Encoders and trans-coders are typically implemented by a dataprocessor operating under the direction of respective sets ofinstructions (e.g., “codecs”). Such instruction sets are commerciallyavailable, and can be integrated into the processor of intake unit 110without undue experimentation. As indicated above, intake unit 110 knowsthe format of the electronic signal being provided to each of its inputports for media readers MR1-MR4. With this knowledge, intake unit 110can readily select an appropriate set of digitization parameters toconfigure the digitizing unit (if the input signal is analog), and anappropriate encoder or trans-coder to generate the digital version inthe format that the user has selected on the intake record.

FIG. 8 shows an exemplary embodiment of intake unit 110. In addition tothe connection to communications network 105 and user interface 115(previously shown in FIG. 1), intake unit 110 further comprises a dataprocessor 112 operating under the direction of a plurality ofinstruction sets stored on a computer-readable medium 114, and a group116 of one or more digitizing units (analog and/or video) coupledbetween the media readers MR1-MR4 and data processor 112. Data processor112 comprises one or more bus interfaces to the digitizing units 116,and I/O ports to user interface 115, such as to a display, keyboard, andmouse. Computer-readable medium 114 may comprise the forms of electronicmemory, magnetic memory (e.g., hard-drive discs), optical memory (e.g.,CD-ROMs), or combinations thereof. The user interface instructionsdirect the processor to present an intake record to the user, to enablethe user to input information into the fields of the intake record, andto hand off a completed intake record to the main control instructionsets for handling. The main control instruction sets direct dataprocessor 112 to determine how the digitizing units should beconfigured, and which encoding and trans-coding instruction to use basedon the information provided in the intake record. The main controlinstruction sets further direct data processor 112 to configure andactivate the appropriate digitizing units in group 116 under thedirection of a set of digitizing and coding control instruction sets,and to direct data processor 112 to undertake the appropriate encodingand/or trans-coding processes under the direction of the appropriateencoding and trans-coding instruction sets to generate the digitalversion of the recording. The encoding and trans-coding instruction setspreferably include subsets of instructions that direct processor 112 toinsert SMPTE time codes into the digital version, preferably while it isbeing generated. These instruction sets can also direct data processor112 to detect the end of the recording, at which point the main controlinstruction sets are notified. Thereafter, the main control instructionsets direct data processor 112 to determine from the intake record thelocation where the digital version is to be stored, to store the digitalversion at that location, to further determine which components ofsystem 100 are to receive notification of the completion of the digitalversion, and to send notifications to those components and to MediaLibrary 130. Alternatively, and as discussed above, the main controlinstruction sets may direct data processor 112 to provide a notificationof completion (along with appropriate information) at a predefinedstorage location, which is periodically monitored by the othercomponents. In either case, these communications are performed by dataprocessor 112 under the direction of a conventional set of networkcommunication instruction sets configured to undertake the notificationtasks according to the present invention. Based on the description ofthe invention provided herein, it is within the ability of one ofordinary skill in the art to compose the above-described instructionsets of intake unit 110.

The above groups of instruction sets may be run on a conventionaloperating system, such as Microsoft Windows or Apple's MAC OS. Theoperating system enables instruction sets to be run by separate parallelprocesses on data processor 110, with the operating system allocatingrecurring slices of processing time to each of the processes in amultiplexed manner, and providing communication facilities for theprocesses to communicate with one another. As such, the tasks performedby each group of instruction sets outlined above may be respectiveparallel processes, with communications between the tasks of thesegroups being routed through the inter-process communication facilitiesof the operating system. Conventional operating systems also enableprogrammers to run several instruction-set groups under one process, butwith each instruction-set group being handled by a respective thread ofprocess execution. This enables the programmer to handle thecommunications between the instruction-set groups within the program'sown environment, without relying upon the inter-process communicationsfacilities of the operating system. In this case, the above group ofinstruction sets may be run by respective parallel threads of executionwithin a single process, with communications between the tasks of thesegroups being managed by data objects and methods that are global to allof the threads. The tasks directed by the instruction set groupsillustrated in FIG. 8 may be allocated to respective processes and/orthreads, with data communications between them. As an example, therespective tasks of the main control instruction sets, user-interfaceinstruction sets, and digitizing and coding control instruction sets maybe run by respective execution threads of a single process. The tasksdirected by the encoding and trans-coding instruction sets may be run asrespective execution threads of another process. In this regard, dataprocessor 112 may include dedicated processing units to carry out thetasks specified by the encoding and trans-coding instruction sets.

As indicated above, intake unit 110 sends and receives messages fromseveral of the other system components, and selected ones of the othersystem components convey messages amongst themselves, as indicated aboveand further below. In this paragraph, we describe how this messaging canbe readily accomplished, as well has how the various components canmonitor file directories for newly added files and the like. In typicalimplementations, each of components 110-140 and 160-190 generallycomprises a data processor running under the direction of an applicationprogram (a collection of one or more instruction sets), which in turn isrunning on top of an operating system, such as Windows, Mac OS, UNIX,etc. These elements are shown in FIG. 8 for intake unit 110, in FIG. 9for components 120, 140, and 160-190, and in FIG. 10 for media-libraryserver 130. The instruction sets of the application program are storedon a computer-readable medium, and typically comprise main controlinstruction sets, one or more task-specific instruction sets that arespecific to the tasks performed by the component, and file and networkcommunication instruction sets. The main control instruction sets directthe data processor to provide the main control for the component, andthe user-interface instructions that direct the data processor to enablea system administrator (and a user in the case of component 190) tomanage, configure, and use the component by way of the user interface(or by way of a web-based interface accessible through a portal 150).The file and network communication instruction sets direct the dataprocessor to obtain and provide information/data to the file system andother components of the system over the network through various filesystem protocols and network communication protocols. The instructionsets of each application program can be written in such languages asC++, Java, Visual Basic, etc. Some of the application programs, such asthat for e-mail server 170, are commercially written and need only beconfigured to the specific task. The file system protocols are builtinto the operating systems as basic services, and the networkcommunications protocols are generally built into the operating systemsas basic services (e.g., SMTP, CDO, POP services), or can be installedas a software layer operating between the application programs and theoperating system. In any event, each file-system andnetwork-communication protocol service provides its own applicationprogram interface (API), which comprises a set of command instructionsthat can be invoked by the instruction sets of the application program(e.g., through function calls and subroutine calls in the programminglanguages of C++, Java, Visual Basic, etc.). These API commandinstructions enable the sending of text and/or data objects in oneapplication program to a selected network address or file storagelocation, where it can be picked up and read by another applicationprogram. In this case, the other application program periodically issuesan API-command instruction to retrieve data at the selected networkaddress or file storage location. As to monitoring directories for thepresence of newly-added files, modern operating systems include filesystems that provide their own API with command instructions that canrequest the contents of a selected directory, including information oneach file in the directory (such as file size and creation date). Manyfile systems are network enabled, and allow an application program torequest the contents of a selected directory on a network server that isseparate from the component that is running the application program.

Portal 150 may comprise a conventional personal computer running anetwork communication program that communicates with network 105, and anetwork browser program and related programs that communicate with thenetwork communication program. An exemplary communication program is thecommon TCP/IP internet protocol software (now generally integrated intomost computer operating systems); exemplary browser programs includeNetscape Navigator and Microsoft Internet Explorer, and exemplaryrelated programs include commercially available media viewers such asQuickTime Viewer and Microsoft Media Player. Portal 150 also provideseach user with access to an e-mail account hosted by e-mail server 170to receive e-mail notifications from various components of system 100,such as notification processor 160 and transcription-logging processor180. The e-mail access program may be provided by Microsoft's Outlook,or Apple's Mail program (the latter of which is generally provided aspart of the Mac operating system).

Referring to FIG. 10, media-library server 130 comprises a dataprocessor 132 operating under the direction of a plurality ofinstruction sets stored on a computer-readable medium 134, a userinterface 135 coupled to data processor 132 for use by a systemadministrator, and a non-volatile data storage device 136 (e.g., storagedisk) coupled to data processor 132. Computer-readable medium 134 maycomprise the forms of electronic memory, magnetic memory (e.g.,hard-drive discs), optical memory (e.g., CD-ROMs), or combinationsthereof. Instead of having user interface 135, media-library server 130may have a web-based interface accessible by at least one of portals 150via web browser. Media-library server 130 has main control instructionsets that direct the data processor in providing the overall control ofserver 130, and user-interface instruction sets to direct data processor132 to enable a system administrator to manage and configure the serverthrough interface 135 and/or the web-based interface. Media-libraryserver 130 maintains a library record for each recording and other mediaasset being produced or used by the production staff. The library recordcan be presented to a user as a web page (e.g., html document or thelike) that can be viewed on a portal 150 by the browser software. Anexemplary library record is shown in FIG. 4A in web-page format, andtypically includes: the recording identifier, the network locationand/or network link to the digital version, the bar code of the tangiblemedium, the network location and/or network link to transcription andlogging files of the recording, additional information collected duringthe intake process, and additional information added by users after thelibrary record has been created. Such additional information typicallycomprises information on the crew that produced the recording, the dateof production, and links to files that contain production notes andcamera and lighting metadata. To access the library record of a mediaasset (e.g., a recording), media-library server 130 presents a mainaccess page to the user by way of a portal 150. An exemplary main accesspage is illustrated in FIG. 5A, and described below in greater detail.

Media-library server 130 maintains a database of the library records(the “Library Database”) that it can search and present to users asrequested. The Library Database may be physically stored at file-storageserver 120 in a directory designated for the purpose, or may be storedon a separate file storage device that is either incorporated withmedia-library server 130 or separate from it. The Library Databasecomprises at least one index file that contains a plurality ofinformation fields (columns) for storing information about a pluralityof library records (rows), and that can be searched across one or moreof the information fields by media-library server 130 to find libraryrecords that match a selected search criterion. The Library Database maybe constructed in a number of ways. As one way, the informationpresented on a library record (FIG. 4A), including network links toother files, is placed in one row of the index file under appropriateinformation fields (e.g., columns), and all the information fields canbe searched. For this, server 130 has instruction sets (as shown in FIG.10) that direct processor 132 to build, modify, and access the LibraryDatabase. A set of computer instructions running on server 130,indicated in FIG. 10 as “Instruction Sets to present and edit LibraryRecords,” can be provided to access a library record from the databaseindex file, and to present it to a user. This set of instructionsreceives a request from a user (via a portal 150) to view a particularlibrary record, finds the record in the index file based on informationprovided to it by the user, reads out the information fieldscorresponding to the requested library record, generates an html-basedweb page for the library record (e.g., FIG. 4A) with the informationfields formatted according to a preset template, and transmits the webpage electronically to the user's portal 150. The request by the user istypically sent by way of an html request message, which can be initiatedby the clicking of an html link, a search box, or a view link on themain web page (FIG. 5A). These instruction sets may comprise acommon-gateway interface (CGI) scripts.

As a second way of constructing the Library Database, media-libraryserver 130 can store a pre-generated web page for each library record,each web page having a unique filename, and can construct the index fileas indicated above, with the exception that some of the informationfields can be removed (those that are not commonly searched), and withthe exception that a new information field is added to contain theunique filenames of the pre-generated web pages. Data processor 132 isdirected in these tasks by the “Instruction Sets to build, modify, andaccess the Library Database.” When a user requests a library record,server 130 can search the index file to find the index record and uniquefilename for the library record based on the criteria provided by theuser, locate the corresponding pre-generated web page using the uniquefilename, and transmit it electronically to the user's portal 150. Dataprocessor 132 is directed in these tasks by the “Instruction Sets topresent and edit Library Records,” and may comprise a common-gatewayinterface (CGI) script. In some instances, the user can provide server130 with the unique filename directly, as could be the case when theuser clicks on an html link to the desired web page, in which case asearch of the index file would not be necessary. Based on thedescription of the invention provided herein, it is within the abilityof one of ordinary skill in the art to compose the above-describedinstruction sets.

In each of the above ways of constructing the Library Database, the“Instruction Sets to build, modify, and access the Library Database” andthe index file may be implemented using a commercially-availableStructured-Query Language (SQL) database, such as Microsoft Access, orby other commercially available databases. Each of these databasesprovides an API with corresponding command instructions for creating,accessing, and modifying columns and rows of the index file (i.e.,creating, accessing, and modifying individual database records), and forobtaining data sets of database records matching particular searchcriteria. The instruction sets for directing server 130 in the tasks ofreceiving requests from users, obtaining the database information, andproviding it to the users in each of the above ways can be implementedwith commercially-available Common Gateway Interface (CGI) programscripts that can be configured for specific tasks, or can be implementedby specifically written CGI scripts with the aid ofcommercially-available CGI script development tools. In general, the CGIscripts can directly access the API of the database programs, or simpleintermediate interfaces can be written in C++ and other languages toconnect the CGI scripts with the API of a database program. For thesecond way of constructing the Library Database, the web pages may bepre-generated by commercially-available scripts for generating web pages(e.g., template-based scripting programs). While the above ways use asingle index file, it may be appreciated that two or more separate indexfiles with different groupings of information fields may be used tooptimize the search speed for different types of searches.

When media-library server 130 receives notification that a new recordinghas been processed by intake unit 110, it creates a library record forthe recording. This includes updating the index file to include a rowfor the new library record, and includes generating a pre-generated webpage for the library record (if the second way of constructing theLibrary Database is used). For this, server 130 comprises a group of“Instruction Sets to create and update Library Records” (FIG. 10) thatdirect data processor 132 to do these tasks. These instruction sets alsodirect data processor 132 to receive information from sub-clip processor140, transcription/logging processor 180, and access-control processor190 about recordings and their respective digital versions, and toupdate the Library Database with the received information. Theseinstruction sets can be written as CGI scripts or can be in programminglanguages such as C++, Java, Visual Basic, etc. In either case, commandinstructions to the API of the database software can be used to updatethe index file, and the APIs of the communications-protocol services ofthe operating systems can be used to communicate messages between server130 and intake unit 110. Based on the description of the inventionprovided herein, it is within the ability of one of ordinary skill inthe art to compose these instruction sets.

In exemplary embodiments to the empty box, or clicks on the “UploadFile” button. In the first case, a blank document, in order to enableusers to add or change information on an asset-library record of a mediaasset, a network link is provided on the web page of the media asset (orthe main access web page) to pull up another web page that enables auser to make additions and changes. The link is shown in FIG. 4A as the“Click to Edit This Page” button, and it pulls up the “Edit AssetLibrary Record” web page shown in FIG. 4B. This web page is generated bymedia-library server 130 (as directed by the “Instruction Sets topresent and edit Library Records”) and it reproduces the currentinformation of the record. The fields of the record that are allowed tobe changed by the user are placed in editable dialog boxes. These fieldstypically include the Segment Title, Tape Name, Producer, FieldProducer, the Camera/Crew personnel, the Shoot location, and the ShootDate fields. Media-library server 130 can be configured by a systemadministrator to only allow certain fields to be edited by selectedusers. For example, production coordinators may be the only usersallowed to edit the Segment Title and Tape Name fields, while theproducers, field producers, and assistant producers would be the onlyusers allowed to edit the Producer, Field Producer, Camera/Crew, ShootLocation, and Shoot Date fields. Storywriters, creative directors, andproduction staffers would not be allowed to edit these fields. The webpage of FIG. 4B also has dialog boxes that enable users to change orremove production note files and secondary files, and to add new files.An existing file can be deleted by removing it from the dialog box, orit can be changed to another file by clicking on the “Browse Files”button, which brings up a search box that enables the user to searchfile directories accessible over communications network 105, and toenter the name of a different file into the editable dialog box. Atleast one empty dialog box is provided to add another production note tothe page, and at least one empty dialog box is provided to add anothersecondary file to the page. To add a file, a user types a new filenamein with the given name and file extension will be created in a presetdirectory for the production notes or the secondary files for the mediaasset. In the second case, the “Upload File” button will bring up asearch box that enables the user to search the network resources andlocal computer drives for a desired file, which is then copied (i.e.,“uploaded”) to the preset directory for the production notes or thesecondary files for the media asset.

Once the user has edited the dialog boxes of interest, the user clickson the “Click to Save Changes” button. This sends an html request backto media-library server 130. The request contains an identifier for eacheditable field and a corresponding value for each editable field. Server130 examines the values of these fields for differences with respect tothe current form of the corresponding media library record to determinethe changes requested by the user, makes the changes on thecorresponding media library record to update it, and sends the user arevised web page (FIG. 4A) for confirmation. The modified web page (FIG.4A) will list the newly added documents, along with hyperlinks (i.e.,network links) that all users can click on to access the documents.Conventional html record formatting may be used to implement theeditable dialog boxes, and conventional CGI scripts may be used toimplement the instruction sets that direct media 130 in providing the“Edit Asset Library Record” web page to the user and in making thechanges requested by the user. The edit web page shown in FIG. 4B alsohas a “Cancel” button which enables the user to end the editing processwithout making changes to the library record. This may be implemented asa network link back to the “Asset Library Record” web page shown in FIG.4A. Referring to FIG. 10, data processor 132 is directed to perform theabove tasks by the “Instruction Sets to present and edit LibraryRecords.”

Media-library server 130 preferably enables the users to search thecontents of the transcription files, the log files, the production notefiles, and the secondary documents that are associated with a mediaasset. The contents may be searched by time code reference as well astext words (both being generically referred to herein as “keywords”).This can be accomplished in a number of ways. As one example, mediaserver 130 creates an index file of these documents, the index filehaving at least the network identifier of the document and the assetrecord that it is associated with. When a user requests a search ofthese documents, which may be done by way of the second search box shownin each of FIGS. 5A and 5B, media-library server 130 runs a search ofthe files listed in the index to find matches to the keywords. Thesearching may be done by invoking a file system search program, such asthat integrated into the Microsoft Windows operating system, or acommercially available network-based search engine, similar to thoseprovided by Yahoo and Google. (Each of these search engines cantypically be configured to build a searching index of the files forfaster searching.) The results may then be presented to the user by awebpage, with an indication of the network link to each matching fileand an indication of the media asset that it is associated with and alink to the library record of that media asset. These tasks can bereadily implemented with instruction sets that direct the operation ofthe data processor 132 of media-library server 130 to perform the abovetasks (“Instruction Sets to search Primary and Secondary Documents” inFIG. 10). The instruction sets can be based on CGI scripts, or other aswell as other scripts, and can use command instructions to the API ofthe file system. Based on the description of the invention providedherein, it is within the ordinary skill of a person in the art tocompose these scripts.

Referring back to FIG. 4A, when access-control processor 190 sends anelectronic message to media-library server 130 to update the storagestatus of a recording's tangible medium, server 130 updates the libraryrecord to reflect the information provided in the electronic message.The electronic message may be sent and received by using instructionsets similar to those described above for other electronic messaging.The electronic message typically contains the recording identifier, anindication of the status of the tangible medium (e.g., checked in,checked out), and a network link to a web page that provides thecontents of the asset-control record (e.g., such as that depicted inFIG. 3A) for the tangible medium, which includes the access history. Theprovision of the recording identifier in the electronic message enablesthe corresponding library record to be found and updated with the newstatus information. Media-library server 130 can also insert into thelibrary record the network link to a web page that brings up theasset-control record for the tangible medium. This enables media-libraryserver 130 to provide the current status of the recording's tangiblemedium (checked in or checked out), and a network link to a web pagethat displays the medium's asset-control record, which has the accesshistory of the tangible medium. Referring to FIG. 10, the “InstructionSets to create and update Library Records” comprises instructions todirect data processor 132 to perform these tasks. The instruction setscan be based on CGI scripts, or other scripts, and can use commandinstructions to the API of the file systems of the components toaccomplish the electronic messaging. Based on the description of theinvention provided herein, it is within the ordinary skill of a personin the art to compose these scripts.

Upon completion of the intake process, notification processor 160receives electronic notification from intake unit 110 of at least therecording identifier and/or the file-storage location of the recording'sdigital version, and a list of groups and/or individuals to notify.Notification processor 160 then generates an e-mail message for eachgroup and/or individual to notify, and sends the e-mail messages toe-mail server 170. The e-mail message contains at least the recordingidentifier and/or the file-storage location of the recording's digitalversion, and a text message indicating that the intake process for therecording has been completed. E-mail server 170 stores these messages sothat the users of the system can access them through portals 150. E-mailserver 170 may comprise, for example, a data processor runningMicrosoft's Exchange software or Apple's Mac OS X server software (seeFIG. 9 for a general configuration of processor 170). The tasks done byNotification processor 160 can be readily implemented with instructionsets that direct the operations of the data processor of notificationprocessor 160 (also see FIG. 9 for a general configuration of processor160). Notification processor 160 can be implemented in a number of ways.As one straightforward way, a set of instructions directs processor 160to receive or otherwise obtain the above-identified information fromintake unit 110, and then to generate e-mail messages and send them tothe accounts of the designated individuals on e-mail server 170. Theinstruction set can be written in scripts or programming languages suchas C++, Java, Visual Basic, etc. In order to receive the electronicnotification from intake unit 110, the instruction set can comprisecommand instructions to an API of a communication protocol service toread electronic messages sent by intake unit 110. Alternatively, theinstruction set can comprise command instructions to the API of the fileserver to check for files placed in a preset directory that aredesignated to hold communications from intake unit 110 to processor 160,as described above. The instruction set can comprise conventionalprogramming instructions to compose a text message having theinformation provided in the electronic notification from intake unit110, and to identify, from the electronic notification, the e-mailaddresses of the individuals who are to receive the text message. Theinstruction set can further comprise command instructions to the API ofthe SMTP communication protocol to send an e-mail to each e-mailaddress, with the body of the e-mail comprising the text message. Thetext message and each e-mail address may be stored in a respectivestring variable when they are generated, and can be passed as variablesin a command instruction to the API of the communication protocol. Basedon the description of the invention provided herein, it is within theability of one of ordinary skill in the art to compose these instructionsets.

Also upon completion of the intake process, transcription-loggingprocessor 180 receives notification of at least the recording identifierand/or the file-storage location of the recording's digital version, anindication of whether transcription and/or logging is to be done, andthe identity of the party that is to perform the transcription/logging.Processor 180 then generates an e-mail request message to thetranscribing party. The request message provides at least the recordingidentifier and/or the file-storage location of the digital version, andmay include the service requested (transcription, logging, or both) ifthe level of service is not prearranged, and the requested turnaroundtime (TAT). This part of transcription-logging processor 180 can beimplemented in a number of ways. As one straightforward way, it may beimplemented in the same straightforward way that processor 160 isimplemented to do its notifications (as described immediately above),except that the contents of the text message contains the informationthat the transcribing party needs, and the e-mail address is that of thetranscribing party.

The transcribing party thereafter views the digital version through anaccess portal 150 or the like, and generates a data file that hastranscribed dialog and/or logging information. In preferred embodiments,the data file preferably comprises a Microsoft rich-text formatdocument, or the like. Such formats enable the transcribing party toplace in the transcription file hyperlinks to specific video and/oraudio frames of the digital version. When the transcription iscompleted, the party sends back a data file for processor 180 to handle.The return of the data file may be accomplished in a number of ways. Asone straightforward way, the transcribing party may send the data fileto a preset file storage directory (such as on file-storage server 120)by the well-known file-transfer protocol (FTP), and processor 180 may beconfigured to periodically check this directory for newly added datafiles. (The file storage device can have an FTP service program runningto accept the FTP files.) The name of this file storage directory can becontained in the request e-mail sent by processor 180, or can beprearranged. The filename of the data file may contain the recordingidentifier so that processor 180 can identify the data file and properlycorrelate it with the recording, or the recording identifier may beplaced inside of the data file and then later read by processor 180 tomake the identification. Also, the request e-mail sent by processor 180may specify the filename for the transcribing party to use. Theinstruction set to direct processor 180 in these tasks can be verysimilar to the instruction set used to direct processor 180 to receiveinformation from intake unit 110. The instruction set directs processor180, such as with the use of command instructions to the API of the filesystem, to periodically check the file directory for returned data filesand to read the filenames and/or contents of newly added data files.Then, standard programming instructions direct processor 180 todetermine the recording identifier to which the data file pertains fromthe filename and/or contents of the data file.

As another way of handling the return of the data file, the transcribingparty may send a reply e-mail to processor 180 containing the data fileas an e-mail attachment. The recording identifier (or anotheridentifier) is placed in the body of the reply e-mail or in the datafile so that processor 180 can correlate the transcription file with therecording. A POP communication-protocol service may be used by theoperating system running processor 180 to receive the e-mail andattachment. An instruction set may then direct processor 180 with theuse of command instructions to the API of the POP service to read thee-mail, and standard programming instructions direct processor 180 todetermine the recording identifier to which the data file pertains fromthe filename and/or contents of the attached data file.

Once processor 180 receives the data file, it places it in anappropriate file storage location (such as on file-storage server 120)if it has not already been placed there by the transcribing party (suchas through the above-described FTP protocol). This can be readilyaccomplished with a command instruction to the API of the file system tocopy the file from one location (e.g., the e-mail attachment) to anotherlocation (e.g., a designated place on file-storage server 120).

With that done, transcription-logging processor 180 causes media-libraryserver 130 to update the library record for the recording to include anetwork link to the transcription data file. This can be accomplished byprocessor 180 sending a request message to media-library server 130containing the recording identifier and a network link to thetranscription file. The instructions to direct components 180 and 130 inthis electronic messaging can be implemented in the same ways as thosedescribed above for other electronic messaging. As for updating thelibrary record to include a network link to the transcription data file,the “Instruction Sets to create and update Library Records” of server130 (FIG. 10) can be augmented to include instructions to update the“Transcript/Log Link” field to include the network link to thetranscription data file. The instruction sets can be based on CGIscripts, or other scripts, and can use command instructions to the APIof the file systems of the components and to the API of the databasethat manages the index file(s). Based on the description of theinvention provided herein, it is within the ordinary skill of a personin the art to compose these scripts.

Processor 180 may comprise the form shown in FIG. 9, with instructionsets directing its data processor to perform the above-described tasks.Based on the description of the invention provided herein, it is withinthe ability of one of ordinary skill in the art to compose theseinstruction sets.

As indicated above, sub-clip processor 140 can be activated after theintake process to divide the digital version of the recording intosub-clips based on selectable criteria, and then to store each sub-clipas a separate file. The digital version is preferably retained in itsoriginal, full form. The sub-clips can be stored in file-storage server120. Typically, the filename for each sub-clip comprises the recordingidentifier (just as the main digital version preferably does), andincludes a suffix identifier that is unique to the sub-clip. The suffixmay comprise a numeric index (such as “.sub.—001,” “.sub.—002,” etc.),an alpha index (such as “_A,” “_B,” etc.), or an alphanumeric index(such as “_A1,” “_A2,” etc.). Three such sub-clips with correspondingnetwork links are shown in the library record of FIG. 4A. Once sub-clipprocessor 140 has generated the sub-clip files, it can send a message tomedia-library server 130 informing it of the names of the sub-clipfiles, and other optical information, such as the criteria used todefine the sub-clip boundaries. As another notification approach,sub-clip processor 140 can place the sub-clip files in a prearrangedfile directory, and media-library server 130 can periodically check thefile directory for newly added files, and associate the new sub-clips tothe appropriate library record by parsing the sub-clip filename for therecording identifier. In either event, media-library server 130 thenupdates the library record for the recording to include a listing of thesub-clips and corresponding hyperlinks. The instruction sets for thesetasks (which are part of “Instruction Sets to create and update LibraryRecords” shown in FIG. 10) can be implemented in the same way as theinstruction sets used to update the library record with a network linkto the transcription data file, as described above. Based on thedescription of the invention provided herein, it is within the ordinaryskill of a person in the art to compose these scripts.

The above-described tasks done by sub-clip processor 140 can be readilyimplemented with instruction sets that direct the operations of the dataprocessor of processor 140 to perform those tasks (see FIG. 9 for ageneral configuration of processor 140).

As we described before, access to the library records (e.g., as shown inFIG. 4A) of the media assets may be provided to the user by way of theexemplary main access web page shown in FIG. 5A. The main access webpage is generated by media-library server 130, and conveyed to a portal150 via communications network 105 to view. The user requests the mainaccess page by typing in the network address (e.g., Universal ResourceLocator, or URL) into the address box of the browser running on theportal 150. As an example, the network may take the form of:“www.theProductionCompany.com/BigCityTrip/ThirdEpisode.html.” The mainaccess web page comprises the title of the project, current newsconcerning the project, and the current date. The project title and newssection are configured by a system administrator (a user having specialprivileges in configuring the system). The news section may comprisehyperlinks to other web pages managed by media library server 130 orother resources of system 100, such as the day's message from the chiefproducer, the schedule of shooting for the day, and the day's e-daily,which generally comprises a listing of recent additions of media assetsto the library. The exemplary main access web page further comprises alisting of media assets to select from (typically listing a presetnumber of the most recently added, or all of the media assets when thetotal is less than the preset number). The listing provides theRecording Identifier, the Segment Title, and the Shoot Date of the mediaasset, with a hyperlink on the Recording Identifier that pulls up thelibrary record (FIG. 4A) of the media asset when a user clicks on it.The listing is generated by accessing the database to find a presetnumber of the most recently added media assets, which may beaccomplished by the instruction sets described above (e.g., CGI scriptsthat interact with the database of library records). At the top of thelisting there is an indication (“Selection Criteria:”) that indicatesthe criteria used in selecting the library records that are displayed.In this case, it is the most recently added records to the library. Ifthe number of library records is greater than the preset number fordisplay, then the listing includes a hyperlink (“More . . . ”) thatbrings up an expanded version of the web page with the next group ofmost recently-added library records.

The main access web page shown in FIG. 5A also comprises a search box toallow a user to search the library records of the media assets bykeywords, such as “Java cafe,” “shopping,” and “promenade.” When a userinitiates such a search, the user's browser sends back a request tomedia-library server 130 to conduct the search. Media-library server 130conducts the search (as described above), and sends back a modified mainweb page in which the listing of media assets contains the libraryrecords that match the user's search criteria. Such a modified page isshown in FIG. 5B, which was generated in response to a user entering thekeyword “promenade” in the search box. In the modified web page, thefield indicating the present selection criteria has been changed to“promenade,” and a hyperlink has been added after the new selectioncriteria to enable the user to return to a listing of mostrecently-added media assets.

In addition, the main access page shown in FIG. 5A comprises hyperlinks(referred to as “view links” herein) to additional web pages that listthe media assets by Segment Title, Tape Name, Status, Bar Code, andSchedule.

Referring to FIG. 10, media-library server 130 comprises “InstructionSets to present and edit Main Access Page” that direct data processor132 to perform the above tasks. These instruction sets may be composedfrom common-gateway interface (CGI) scripts or common programminglanguages, such as C++, Java, Visual Basic, etc., with appropriatecommand instructions to the APIs of the file system and database for thelibrary records. Based on the description of the invention providedherein, it is within the ability of one of ordinary skill in the art tocompose the above-described instruction sets.

Conventional internet security protocols, such as secure-socketinterface and public-key interface protocols, may be added to system 100to safeguard the electronic communications among components 110-190.

To illustrate the benefits and advantages that system 100 and itsrelated processes bring to the production environment, we first describethe work flow of the current production environment for reality TVshows, and then describe the new work flows provided by system 100 andits related processes.

FIG. 6 illustrates the current production environment. The production ofa network reality TV show typically involves booking hundreds ofstories, sending field crews out to shoot each story. The Beta SP or DVtapes generated by the field crews are sent by courier back to theproduction site, where a postproduction team duplicates the originaltapes to VHS work copies. Several work copies of each original Beta SPor DV tape are made for distribution to field producers, producers,executives, transcriptionists, loggers, writers, editors, and otherproduction staff. The original Beta SP or DV tapes are stored for lateruse in the final editing stage. The loggers and transcriptionists beginimmediately to summarize the action and transcribe the dialog on eachtape, so that the storywriters, editors, executives, and producers canidentify tapes that may have compelling story points, and startsketching out one or more storyboards for the reality TV show. Oncethese tapes are identified, they are reviewed by the storywriters,directors, executives, field producers, and producers on VHS tapeplayers to refine the story points and storyboards. The storywriters andcreative directors build the storyboard, sending the transcriptions tothe editors to cut and piece together. During this time, editors,executives, field producers, and producers generate a considerablevolume of notes to the storywriters and creative directors as part ofthe process of developing the final storyboard for the reality TV show.The notes are consolidated, the storyboard is finalized, and thepertinent scenes are identified. The original tapes containing thepertinent scenes are collected, sent to the video editing staff to bedigitized, and then entered into a video editing system, such as theApple Final Cut or AVID Unity video editing system. Using the videoediting system, and working under the direction of key executives,producers, storywriters, and creative directors, the editing staffpieces the scenes together into a whole, adds sound tracks, music, andartwork, and generates a tape of the complete show, which is then airedat the scheduled time.

Coordinating all of these activities is significantly time-consuming andexpensive. Typically, generating the VHS work copies is the mostexpensive and time-consuming element. It involves several staff,expensive equipment, thousands of VHS cassettes, and many hours, sincethe duplication of each tape is done at the normal tape-playing rate(1.times.), thereby slowing the postproduction process. The large volumeof video tapes creates several bottlenecks in the work flow. Creatingthe VHS work copies, of course, is a major bottleneck. Transcription andlogging of a large number of tapes also pose major bottlenecks to theprocess since the identification of story points and building ofstoryboards is often based on reviewing logs and transcripts and piecingtogether cut-up transcripts. To address this bottleneck, the VHS workcopies are rush-delivered to local transcriptionists and loggers atgreat expense. Once the transcripts are made, there are furtherbottlenecks in identifying and sharing the transcripts and logs fordiscussion between the storywriters and other production personnel. Themultiple VHS work copies take up a large amount of storage space andrequire a large amount of staff time to manage the checking in andchecking out of the tapes. With the large volume of tapes, the effortsof the production staffers often interfere and hinder the ability forthe crew to efficiently coordinate and manage the distribution of theVHS work copies, thereby creating both a management bottleneck andopportunities for error. Additionally, there are the expenses ofhandling and storing the massive tape libraries, providing high-end tapeplayers (edit decks) and desktop logging systems, managing the loggingand transcription processes, and dealing with multiple vendors. There isa lack of effective writing tools which impedes creative productivity,and an inability of the production staff to work remotely (away from theproduction site). The difficulty and costs of the present productionapproach threaten deadlines and budgets, and further impedeproductivity.

Referring to FIG. 7, when using system 100 and its related processes inan exemplary production environment, camera footage is shot, usually atvarious locations, and the resulting original tapes sent to intake unit110 for processing. There can be more than one instance of intake unit110, and there is usually at least one intake unit 110 at the companyproduction site. The tapes are processed by intake unit 110, andcorresponding digital versions are stored on file storage server 120 andcorresponding library records are created by media-library server 130.As an advantage, an instance of intake unit 110 may be located at ashooting site that is remote from the company production site, and thedigital version and notification messages may be transmitted bysatellite or through the internet to the company production site (i.e.,to the other components of system 100). Each original tape need only beplayed once, which is far less time consuming than the duplicationprocess of generating VHS work copies, and which eliminates theVHS-duplication bottleneck. The tapes processed by intake unit 110 arethen processed by access-control processor 190 and sent to storage vault198 for safekeeping. E-mail notifications are then sent to selectedusers as each tape is processed by intake unit 110, and the users canthen instantly view the digital version on their access portals 150without having to wait for VHS-work copies to be made and delivered tothem. This eliminates the management bottleneck in managing anddelivering the work copies that is present in the prior art work flow.Also, after the intake process is completed, the request for thetranscription and/or log is quickly sent to the transcribing party bye-mail. Some of the transcribing parties may be located in other timezones to enable transcriptions to be done overnight and ready for thenext morning. This is generally not possible in the prior art work flowapproach since a VHS work copy has to be generated and then physicallytransported to a local company. As each transcript/log is completed, itis quickly uploaded onto media-library server 130, and storywriters,directors, executives, field producers, and producers can be notifiedimmediately, and start their review of the record. Media-library server130 provides an efficient way for the users to manage and review therecordings, and to share information by attaching files to the libraryweb pages. In addition, notes and information can be exchanged betweenusers by e-mail, and users can copy network links to relevant tapes,sub-clips, transcripts, and logs into their e-mails for fast andefficient sharing of ideas and information. The storywriters can composestoryboards electronically and store them on file-storage server 120 forother users to view. Once the final storyboard is completed, thepertinent scenes from the tapes can be directly loaded into the videoediting system directly from media-library server 130 (or the originaltapes can pulled from storage vault 198 and reimported or redigitized ata higher resolution and input into the video editing system).

In addition to the above advantages, system 100 eliminates the need forproviding users with high-end tape-playing decks (e.g., edit decks)since access portals 150 eliminate the need for the playing decks andsince the computers that the users already have can be used to implementthe access portals 150. In addition, the digital versions can beprovided to the access portals in a manner that prevents copying,thereby greatly improving security.

According, the present-invention provides an integrated end-to-endsolution for production companies to bridge the gap between the shootingof footage and the final storyboard editing with digital workflowsolutions that eliminate waste, improve production efficiency, andreduce production costs.

While the present inventions have been particularly described withrespect to the illustrated embodiments, it will be appreciated thatvarious alterations, modifications and adaptations may be made based onthe present disclosure, and are intended to be within the scope of thepresent inventions. While the inventions have been described inconnection with what are presently considered to be the most practicaland preferred embodiments, it is to be understood that the presentinventions are not limited to the disclosed embodiments but, on thecontrary, is intended to cover various modifications and equivalentarrangements included within the scope of the appended claims.

What is claimed is:
 1. A system for assisting in the production of amedia work from a plurality of content recordings, the systemcomprising: an intake unit having a processor programmed tosimultaneously process the content recordings to produce digitalrecordings that including a plurality of time stamps, and receivetranscriber input information including a transcribing party; afile-storage server accessible over a communications network for storingdigital recordings processed by the intake unit, the file-storage serverstoring the digital recordings as files that are accessible over thecommunications network by reference to corresponding networkidentifiers, the intake unit being programmed to generate, uponcompletion of the storage of at least one of the digital recordings inthe file-storage server, a notification of the presence of the digitalrecording in the file-storage server and a transcribing request based onthe digital recording, and transmit the transcribing request to thetranscribing party, the transcribing request includes at least one offile-storage location of the recording's digital version, an indicationof whether transcription is to be done, and the identity of the party toperform the transcription; a media-library server comprising: a databaseof library records of the content recordings, each library record havinga field to store the network address of the digital recording and aplurality of information fields that store respective pieces ofinformation about the digital recording including at least one of thetranscribing request and the transcribing party; and a set ofinstructions that generate web page representations of the libraryrecords that are accessible over the communications network; and asub-clip processor configured to: divide the digital recording into aplurality of sub-clips based on the time stamps and the transcriberinput information.
 2. The system of claim 1, wherein the media-libraryserver further comprises an instruction set that generates at least oneweb page accessible over the communications network that presents adialog box for accepting keywords that may be used to search one or morefields of the library records.
 3. The system of claim 1, wherein atleast one of the library records comprises a file-association field forassociating one or more document files with the digital recording, andwherein the media-library server generates at least one web pageaccessible over the communications network that presents a dialog boxfor accepting a filename or network address of a document file that isto be added to the file-association field.
 4. The system of claim 3,wherein the media-library server further comprises an instruction setthat generates at least one web page accessible over the communicationsnetwork that presents a dialog box for accepting keywords that may beused to search the contents of document files that have been associatedwith one or more of the library records.
 5. The system of claim 1,wherein the notification is an e-mail.
 6. The system of claim 1, whereinthe sub-clip processor is configured to store each sub-clip as aseparate file on the file-storage server.
 7. The system of claim 1,wherein the sub-clip processor is configured to divide the digitalrecording into the plurality of sub-clips based on a scene change in thedigital recording.
 8. The system of claim 1, wherein the media-libraryserver is programmed to update the record with a link to at least one ofthe sub-clips.
 9. The system of claim 1, wherein the media-libraryserver includes a search engine programmed to search the database basedon a keyword.
 10. The system of claim 1, wherein the media-libraryserver includes a search engine programmed to search the database basedon a time code.
 11. The system of claim 1, wherein the media-libraryserver is programmed to update the record with the current status of thedigital recording.
 12. The system of claim 1, wherein the media-libraryserver is programmed to update the record with a link to a transcriptiondata file upon completion of a transcription of the digital recording.13. A method for assisting in the production of a media work from aplurality of content recordings, the method comprising: digitizing andencoding simultaneously at least one of the content recordings toproduce a digital recording with a plurality of time stamps; receivingtranscriber input information including a transcribing party for thedigital recording; storing the digital recording in a file-storageserver, the digital recording being accessible over a communicationsnetwork by reference to a corresponding network identifier; uponcompletion of the storing of the digital recording in the file-storageserver, sending a notification of the presence of the digital recordingto a plurality of destinations over the communications network, thenotification including the network identifier of the digital recordingand a transcribing request based on the digital recording, at least oneof the destinations including a media-library server; transmitting thetranscribing request to the transcribing party, the transcribing requestincludes at least one of file-storage location of the recording'sdigital version, an indication of whether transcription is to be done,and the identity of the party to perform the transcription; creating, inthe media-library server, a library record corresponding to the digitalrecording stored on the file-storage server in response to thenotification and transcribing request; dividing the digital recordinginto a plurality of sub-clips based on the time stamps and thetranscriber input information; and storing, in the file-storage server,the plurality of sub-clips associated with the digital recording storedon the file-storage server.
 14. The method of claim 13, furthercomprising creating a database in the media-library server of thedigital recordings.
 15. The method of claim 14, further comprising:tracking the storage status of a tangible form of the digital recording;and updating the database to reflect the storage status of the digitalrecording's tangible form.
 16. The method of claim 13, furthercomprising receiving and storing a transcription of the digitalrecording stored on the file-storage server, the transcription havingbeen prepared in response to one of the notifications sent over thecommunications network.
 17. The method of claim 13, further comprisingstoring, in the file-storage server, a storyboard associated with thedigital recording stored on the file-storage server.
 18. The method ofclaim 13, further comprising redigitizing at least a portion of thedigital recording stored on the file-storage server at a resolutionhigher than that of the digital recording stored on the file-storageserver.